package cn.xorange.commons.utils.io;

import cn.xorange.commons.utils.exception.UtilsException;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;

/**
 * @author : yangjian
 * date : 2024/7/4
 * description :
 */
public class FileUtils {
    private FileUtils(){}

    /**
     * 将MultipartFile转换为File
     * @param multiFile 文件
     */
    public static File multipartFileToFile(MultipartFile multiFile) {
        // 获取文件名
        String fileName = multiFile.getOriginalFilename();
        // 获取文件后缀
        String prefix = fileName.substring(fileName.lastIndexOf("."));
        // 若须要防止生成的临时文件重复,能够在文件名后添加随机码
        try {
            File file = File.createTempFile(fileName, prefix);
            multiFile.transferTo(file);
            return file;
        } catch (Exception e) {
            throw UtilsException.systemException(e.getMessage());
        }
    }

}
